﻿using DAL;
using System;
using System.Collections.Generic;
using System.Data.SqlClient;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace BEL
{
    public class Categoria
    {
        #region atributos
        private int _categoriaId;
        private String _categoriaNombre;

        #endregion

        #region properties
        public int CategoriaId
        {
            get { return _categoriaId; }
            set { _categoriaId = value; }
        }

        public String CategoriaNombre
        {
            get { return _categoriaNombre; }
            set { _categoriaNombre = value; }
        }

        #endregion

        #region constructores

        public Categoria(int categoriaId, String categoriaNombre)
        {
            _categoriaId = categoriaId;
            _categoriaNombre = categoriaNombre;
        }

        public Categoria()
        {

        }

        #endregion

        #region funciones

        public static List<Categoria> BuscarCategorias()
        {
            List<Categoria> ret = new List<Categoria>();
            DALCategorias dalcategoria = new DALCategorias();
            SqlDataReader dr = dalcategoria.BuscarCategorias();
             
            while (dr.Read())
            {
                Categoria cat = new Categoria();
                cat.CategoriaId = Convert.ToInt32(dr["CatId"]);
                cat.CategoriaNombre = Convert.ToString(dr["CatNombre"]);
                ret.Add(cat);
            }
            dr.Close();
            return ret;
        }

        public static Categoria BuscarCategoriaPorId(int categoriaId)
        {
            DALCategorias dalcategoria = new DALCategorias();
            SqlDataReader dr = dalcategoria.BuscarCategoriaPorId(categoriaId);
            Categoria cat = null;
            while (dr.Read())
            {
                cat = new Categoria();
                cat.CategoriaId = Convert.ToInt32(dr["CatId"]);
                cat.CategoriaNombre = Convert.ToString(dr["CatNombre"]);
            }
            dr.Close();
            return cat;
        }

        public Boolean AltaCategoria(string categoriaNombre)
        {
            return false;
        }

        public Boolean ModificarCategoria(int categoriaId, string categoriaNombre)
        {
            return false;
        }

        public Boolean BajaCategoria(int categoriaId)
        {
            return false;
        }

        #endregion
    }
}
